const path = require('path')
const fs = require('fs-extra')
const inquirer = require('inquirer')
const Generator = require('./Generator')

module.exports = async function () {
    const pkg = require("../package.json");
    console.log("current pkg info: ")
    console.log(pkg)
    // 执行创建命令
    const { name } = await inquirer.prompt({
        type: 'input', //type：input,confirm,list,rawlist,checkbox,password...
        name: 'name', // key 名
        message: 'please input project name', // 提示信息
        default: 'my-app' // 默认值
    })
    // 当前命令行选择的目录
    const cwd = process.cwd();
    // 需要创建的目录地址
    const targetAir = path.join(cwd, name)
    console.log("需要创建的目录地址：" + targetAir)
    console.log("地址是否存在：" + fs.existsSync(targetAir))
    // 目录是否已经存在？
    if (fs.existsSync(targetAir)) {
        await fs.remove(targetAir)
    }
    // 创建项目
    const generator = new Generator(name, targetAir);

    // 开始创建项目
    generator.create()
}